﻿module FastDWD

// f_x is the polynom for x (always in list of tuples)
// f_odd is the polynom for odds (f(d1,d2)(l,a,b))
// f_even so forth

let output (f_x:int[]) (f_y:int[]) =
    let outList = List.init (f_x.Length) (fun i -> (f_x.[i],f_y.[i]))
    outList

let rec Build (l:int) (ab:string[]) = //ab is character dictionary
    let m = 
    if l < 1 then
        failwith "length is too small, must be 1 or greater"
    elif l = 1 then
        let f_odd = null
        let f_x = // find all permutations of a and b matching according to dictionary
